528 research outputs found
Categorical Data Structures for Technical Computing
Many mathematical objects can be represented as functors from
finitely-presented categories to . For instance,
graphs are functors to from the category with two parallel arrows.
Such functors are known informally as -sets. In this paper, we
describe and implement an extension of -sets having data attributes
with fixed types, such as graphs with labeled vertices or real-valued edge
weights. We call such structures "acsets," short for "attributed
-sets." Derived from previous work on algebraic databases, acsets
are a joint generalization of graphs and data frames. They also encompass more
elaborate graph-like objects such as wiring diagrams and Petri nets with rate
constants. We develop the mathematical theory of acsets and then describe a
generic implementation in the Julia programming language, which uses advanced
language features to achieve performance comparable with specialized data
structures.Comment: 26 pages, 7 figure
Computational category-theoretic rewriting
We demonstrate how category theory provides specifications that can
efficiently be implemented via imperative algorithms and apply this to the
field of graph rewriting. By examples, we show how this paradigm of software
development makes it easy to quickly write correct and performant code. We
provide a modern implementation of graph rewriting techniques at the level of
abstraction of finitely-presented C-sets and clarify the connections between
C-sets and the typed graphs supported in existing rewriting software. We
emphasize that our open-source library is extensible: by taking new categorical
constructions (such as slice categories, structured cospans, and distributed
graphs) and relating their limits and colimits to those of their underlying
categories, users inherit efficient algorithms for pushout complements and
(final) pullback complements. This allows one to perform double-, single-, and
sesqui-pushout rewriting over a broad class of data structures
Operadic Modeling of Dynamical Systems: Mathematics and Computation
Dynamical systems are ubiquitous in science and engineering as models of
phenomena that evolve over time. Although complex dynamical systems tend to
have important modular structure, conventional modeling approaches suppress
this structure. Building on recent work in applied category theory, we show how
deterministic dynamical systems, discrete and continuous, can be composed in a
hierarchical style. In mathematical terms, we reformulate some existing operads
of wiring diagrams and introduce new ones, using the general formalism of
C-sets (copresheaves). We then establish dynamical systems as algebras of these
operads. In a computational vein, we show that Euler's method is functorial for
undirected systems, extending a previous result for directed systems. All of
the ideas in this paper are implemented as practical software using Catlab and
the AlgebraicJulia ecosystem, written in the Julia programming language for
scientific computing.Comment: In Proceedings ACT 2021, arXiv:2211.0110
A diagrammatic view of differential equations in physics
Presenting systems of differential equations in the form of diagrams has
become common in certain parts of physics, especially electromagnetism and
computational physics. In this work, we aim to put such use of diagrams on a
firm mathematical footing, while also systematizing a broadly applicable
framework to reason formally about systems of equations and their solutions.
Our main mathematical tools are category-theoretic diagrams, which are well
known, and morphisms between diagrams, which have been less appreciated. As an
application of the diagrammatic framework, we show how complex, multiphysical
systems can be modularly constructed from basic physical principles. A wealth
of examples, drawn from electromagnetism, transport phenomena, fluid mechanics,
and other fields, is included.Comment: 69 page
A Categorical Representation Language and Computational System for Knowledge-Based Planning
Classical planning representation languages based on first-order logic have
been extensively used to model and solve planning problems, but they struggle
to capture implicit preconditions and effects that arise in complex planning
scenarios. To address this problem, we propose an alternative approach to
representing and transforming world states during planning. Based on the
category-theoretic concepts of -sets and double-pushout rewriting
(DPO), our proposed representation can effectively handle structured knowledge
about world states that support domain abstractions at all levels. It
formalizes the semantics of predicates according to a user-provided ontology
and preserves the semantics when transitioning between world states. This
method provides a formal semantics for using knowledge graphs and relational
databases to model world states and updates in planning. In this paper, we
compare our category-theoretic representation with the classical planning
representation. We show that our proposed representation has advantages over
the classical representation in terms of handling implicit preconditions and
effects, and provides a more structured framework in which to model and solve
planning problems
Graph analysis combining numerical, statistical, and streaming techniques
Graph analysis uses graph data collected on a physical, biological, or social
phenomena to shed light on the underlying dynamics and behavior of the agents in that system. Many fields contribute to this topic including graph theory, algorithms, statistics, machine learning, and linear algebra. This dissertation advances a novel framework for dynamic graph analysis that combines numerical, statistical, and streaming algorithms to provide deep
understanding into evolving networks. For example, one can be interested in the changing influence structure over time. These disparate techniques each
contribute a fragment to understanding the graph; however, their combination
allows us to understand dynamic behavior and graph structure. Spectral partitioning methods rely on eigenvectors for solving data analysis
problems such as clustering. Eigenvectors of large sparse systems must be approximated with iterative methods. This dissertation analyzes how data analysis accuracy depends on the numerical accuracy of the eigensolver. This leads to new bounds on the residual tolerance necessary to guarantee correct partitioning. We present a novel stopping criterion for spectral partitioning guaranteed to satisfy the Cheeger inequality along with an empirical study of the performance on real world networks such as web, social, and e-commerce networks. This work bridges the gap between numerical analysis and computational data analysis.Ph.D
- …